AD管理脚本 |
您所在的位置:网站首页 › ad 脚本 › AD管理脚本 |
给朋友公司创建的一个AD管理的脚本,主要在Carrefour China根OU下创建门店编号的子OU,在子OU下再创建子子OU,然后创建域本地组和全局组,然后进行组的嵌套。 ======将下面的内容保存为.HTA文档(不包含这一行)=========AD管理 ApplicationName = "AD管理" SingleInstance = "yes" ShowInTaskbar = "yes" WindowState = "normal" Caption = "yes" Sysmenu = "yes" MaximizeButton = "no" Border = "dialog" BorderStyle = "normal" InnerBorder = "yes" Scroll = "no" ContextMenu = "no" Selection = "no" /> Const strAbout = "1.0 (2007年8月26日)"Const strCopyr = "上海赛卫思 许震 / [email protected]"Const strHelp = "请以域管理员身份运行本脚本" Window.resizeTo 360, 240 Sub RunScript 'On Error Resume Next Const E_RootOU_Not_Found = 424 Const ADS_PROPERTY_APPEND = 3 Const ADS_GROUP_TYPE_LOCAL_GROUP = &h4 Const ADS_GROUP_TYPE_SECURITY_ENABLED = &h80000000 '获得门店简称XXXX和编号YYY,如果用户没有输入就提示错误信息并退出 If StoreName.value="" Then InfoArea.InnerHTML="Err:没有输入门店简称!" Exit Sub Else XXXX=UCase(StoreName.value) End If If StoreNum.value="" Then InfoArea.InnerHTML="Err:没有输入门店编号!" Exit Sub Else YYY= UCase(StoreNum.value) End If '设定OU名称 StoreOU="OU=" & XXXX & YYY '设定根OU为chdom.corp\Carrefour China RootOU="OU=Carrefour China" DomainDN="DC=serviceit,DC=local" Set bjRootOU = GetObject("LDAP://" & RootOU & "," & DomainDN) If err.number 0 Then InfoArea.InnerHTML="域名或根OU不存在,请修改脚本!" err.Clear Exit Sub End If Set bjStoreOU = objRootOU.Create("OrganizationalUnit", StoreOU) objStoreOU.SetInfo If err.number 0 Then InfoArea.InnerHTML= "该OU已经存在,请检查AD对象或输入信息!" Exit Sub Else InfoArea.InnerHTML= XXXX & YYY & "门店OU创建成功,正在创建子OU..." End If '创建子OU Set bjStoreRootOU = GetObject("LDAP://" & StoreOU & "," & RootOU & "," & DomainDN) Set objOU1 = objStoreRootOU.Create("OrganizationalUnit", "OU=Groups Global") objOU1.SetInfo Set objOU2 = objStoreRootOU.Create("OrganizationalUnit", "OU=Groups Local") objOU2.SetInfo Set objOU3 = objStoreRootOU.Create("OrganizationalUnit", "OU=Servers") objOU3.SetInfo Set objOU4 = objStoreRootOU.Create("OrganizationalUnit", "OU=Services Account") objOU4.SetInfo Set objOU5 = objStoreRootOU.Create("OrganizationalUnit", "OU=Users") objOU5.SetInfo Set objOU6 = objStoreRootOU.Create("OrganizationalUnit", "OU=Workstations") objOU6.SetInfo '子OU创建完成 '在Groups Global OU下创建7个全局组 Set bjGroupGlobleOU = GetObject("LDAP://OU=Groups Global," & StoreOU & "," & RootOU & "," & DomainDN) Set objGroupGloble1 = objGroupGlobleOU.Create("Group", "CN=gg" & XXXX & "_AccountOperators") objGroupGloble1.Put "sAMAccountName", "gg" & XXXX & "_AccountOperators" objGroupGloble1.SetInfo Set objGroupGloble2 = objGroupGlobleOU.Create("Group", "CN=gg" & XXXX & "_HelpDesk") objGroupGloble2.Put "sAMAccountName", "gg" & XXXX & "_HelpDesk" objGroupGloble2.SetInfo Set objGroupGloble3 = objGroupGlobleOU.Create("Group", "CN=gg" & XXXX & "_LocalAdmins") objGroupGloble3.Put "sAMAccountName", "gg" & XXXX & "_LocalAdmins" objGroupGloble3.SetInfo Set objGroupGloble4 = objGroupGlobleOU.Create("Group", "CN=gg" & XXXX & "_ServerAdmins") objGroupGloble4.Put "sAMAccountName", "gg" & XXXX & "_ServerAdmins" objGroupGloble4.SetInfo Set objGroupGloble5 = objGroupGlobleOU.Create("Group", "CN=gg" & XXXX & "_WorkstationAdmins") objGroupGloble5.Put "sAMAccountName", "gg" & XXXX & "_WorkstationAdmins" objGroupGloble5.SetInfo Set objGroupGloble6 = objGroupGlobleOU.Create("Group", "CN=gg" & XXXX & YYY) objGroupGloble6.Put "sAMAccountName", "gg" & XXXX & YYY objGroupGloble6.SetInfo Set objGroupGloble7 = objGroupGlobleOU.Create("Group", "CN=gg" & XXXX & "EnaUSB") objGroupGloble7.Put "sAMAccountName", "gg" & XXXX & "EnaUSB" objGroupGloble7.SetInfo 'Groups Global OU中全局组创建完成 '在Groups Local OU中创建6个域本地组 Set bjGroupLocalOU = GetObject("LDAP://OU=Groups Local," & StoreOU & "," & RootOU & "," & DomainDN) Set objGroupLocal1 = objGroupLocalOU.Create("Group", "CN=lg" & XXXX & "_AccountOperators") objGroupLocal1.Put "sAMAccountName", "lg" & XXXX & "_AccountOperators" objGroupLocal1.Put "groupType", ADS_GROUP_TYPE_LOCAL_GROUP Or ADS_GROUP_TYPE_SECURITY_ENABLED objGroupLocal1.SetInfo Set objGroupLocal2 = objGroupLocalOU.Create("Group", "CN=lg" & XXXX & "_HelpDesk") objGroupLocal2.Put "sAMAccountName", "lg" & XXXX & "_HelpDesk" objGroupLocal2.Put "groupType", ADS_GROUP_TYPE_LOCAL_GROUP Or ADS_GROUP_TYPE_SECURITY_ENABLED objGroupLocal2.SetInfo Set objGroupLocal3 = objGroupLocalOU.Create("Group", "CN=lg" & XXXX & "_LocalAdmins") objGroupLocal3.Put "sAMAccountName", "lg" & XXXX & "_LocalAdmins" objGroupLocal3.Put "groupType", ADS_GROUP_TYPE_LOCAL_GROUP Or ADS_GROUP_TYPE_SECURITY_ENABLED objGroupLocal3.SetInfo Set objGroupLocal4 = objGroupLocalOU.Create("Group", "CN=lg" & XXXX & "_ServerAdmins") objGroupLocal4.Put "sAMAccountName", "lg" & XXXX & "_ServerAdmins" objGroupLocal4.Put "groupType", ADS_GROUP_TYPE_LOCAL_GROUP Or ADS_GROUP_TYPE_SECURITY_ENABLED objGroupLocal4.SetInfo Set objGroupLocal5 = objGroupLocalOU.Create("Group", "CN=lg" & XXXX & "_WorkstationAdmins") objGroupLocal5.Put "sAMAccountName", "lg" & XXXX & "_WorkstationAdmins" objGroupLocal5.Put "groupType", ADS_GROUP_TYPE_LOCAL_GROUP Or ADS_GROUP_TYPE_SECURITY_ENABLED objGroupLocal5.SetInfo Set objGroupLocal6 = objGroupLocalOU.Create("Group", "CN=lg" & XXXX & YYY) objGroupLocal6.Put "sAMAccountName", "lg" & XXXX & YYY objGroupLocal6.Put "groupType", ADS_GROUP_TYPE_LOCAL_GROUP Or ADS_GROUP_TYPE_SECURITY_ENABLED objGroupLocal6.SetInfo '在Groups Local OU中创建域本地组完成 '在Services Account OU中创建SMSRemoteControlGroup全局组 Set bjServicesAccountOU = GetObject("LDAP://OU=Services Account," & StoreOU & "," & RootOU & "," & DomainDN) Set objGroupGloble8 = objServicesAccountOU.Create("Group", "CN=gg" & XXXX & "_SMSRemoteControlGroup") objGroupGloble8.Put "sAMAccountName", "gg" & XXXX & "_SMSRemoteControlGroup" objGroupGloble8.SetInfo '在Services Account OU中创建SMSRemoteControlGroup全局组完成 '将全局组添加到本地组中 Set bjAccountOperatorsGroup = GetObject("LDAP://CN=lg" & XXXX & "_AccountOperators,OU=Groups Local," _ & StoreOU & "," & RootOU & "," & DomainDN) objAccountOperatorsGroup.PutEx ADS_PROPERTY_APPEND, "member", array("CN=gg" & XXXX & "_AccountOperators,OU=Groups Global," & StoreOU & "," & RootOU & "," & DomainDN) objAccountOperatorsGroup.SetInfo Set bjHelpDeskGroup = GetObject("LDAP://CN=lg" & XXXX & "_HelpDesk,OU=Groups Local," _ & StoreOU & "," & RootOU & "," & DomainDN) objHelpDeskGroup.PutEx ADS_PROPERTY_APPEND, "member", array("CN=gg" & XXXX & "_HelpDesk,OU=Groups Global," & StoreOU & "," & RootOU & "," & DomainDN) objHelpDeskGroup.SetInfo Set bjLocalAdminsGroup = GetObject("LDAP://CN=lg" & XXXX & "_LocalAdmins,OU=Groups Local," _ & StoreOU & "," & RootOU & "," & DomainDN) objLocalAdminsGroup.PutEx ADS_PROPERTY_APPEND, "member", array("CN=gg" & XXXX & "_LocalAdmins,OU=Groups Global," & StoreOU & "," & RootOU & "," & DomainDN) objLocalAdminsGroup.SetInfo Set bjServerAdminsGroup = GetObject("LDAP://CN=lg" & XXXX & "_ServerAdmins,OU=Groups Local," _ & StoreOU & "," & RootOU & "," & DomainDN) objServerAdminsGroup.PutEx ADS_PROPERTY_APPEND, "member", array("CN=gg" & XXXX & "_ServerAdmins,OU=Groups Global," & StoreOU & "," & RootOU & "," & DomainDN) objServerAdminsGroup.SetInfo Set bjWorkStationAdminsGroup = GetObject("LDAP://CN=lg" & XXXX & "_WorkStationAdmins,OU=Groups Local," _ & StoreOU & "," & RootOU & "," & DomainDN) objWorkStationAdminsGroup.PutEx ADS_PROPERTY_APPEND, "member", array("CN=gg" & XXXX & "_WorkStationAdmins,OU=Groups Global," & StoreOU & "," & RootOU & "," & DomainDN) objWorkStationAdminsGroup.SetInfo Set bjXXXXYYYGroup = GetObject("LDAP://CN=lg" & XXXX & YYY & ",OU=Groups Local," _ & StoreOU & "," & RootOU & "," & DomainDN) objXXXXYYYGroup.PutEx ADS_PROPERTY_APPEND, "member", array("CN=gg" & XXXX & YYY & ",OU=Groups Global," & StoreOU & "," & RootOU & "," & DomainDN) objXXXXYYYGroup.SetInfo '全局组添加到域本地组完成 End Sub Sub setx(t) Dim obj : Set bj = window.event.srcElement If t = "" Then obj.style.color = "gray" obj.style.cursor = "default" Else obj.style.color = "darkblue" obj.style.cursor = "hand" End If footer.innerHTML = tEnd Sub AD管理脚本 输入门店简称,如SHNX;输入门店号,如145 确认无误后点击运行按钮 门店简称: 门店编号:信息:无版本 |作者 |帮助 | |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |